לוגיקה למדעי המחשב ניצן פומרנץ 25 ביוני 2015 רשימות בקורס לוגיקה למדעי המחשב, סמסטר אביב תשע"ה, אוניברסיטת תל אביב. טעויות קורות אשמח שתעדכנו אותי עליהן ושאתקנן. אמיר שפילקה shpilka@post.tau.ac.il שרייבר 118 שעת קבלה: יום א' 13 12 מתרגלים: לירון כהן, בן לי וולך. תרגילים שבועיים הגשה בזוגות. חייבים להגיש לפחות 9 תרגילים, והציון יקבע לפי ה 9 הטובים ביותר. בוחן אמצע יתבסס על התרגילים, אינו חובה ואם מקבלים מעל 75 אז יש בונוס 4 נקודות לציון הסופי. תאריך: תחילת מאי. מבנה ציון: 90% בחינה ו 10% ש"ב (מגן). הרצאה 1 8.3.15 1................................... גיאומטריה אוקלידית 0.1 1 טענות וטיעון תקף..................................... 0.2 1..................................... אינדוקצית מבנה 0.3 2 בניית קבוצה באינדוקציה............................ 0.3.1 2 סדרת יצירה/בניה................................ 0.3.2 תוכן עניינים 5 תחשיב הפסוקים I 6 עצי יצירה (גזירה).......................................... 1 7 סדר קדימויות על קשרים................................. 1.1 7 טיעון תקף.............................................. 2 8.................................... הגדרת ערך האמת 2.1 8.......................... טבלאות האמת של הקשרים 2.1.1 9.................................... שלמות פונקציונלית 2.2 9 סימונים ומושגים סמנטיים בסיסיים................................. 3 10................................ מסקנות חשובות 3.0.1 10 הצבות........................................... 3.1 12 צורות נורמליות Forms) (Normal............................ 3.2 12 הוכחה בתחשיב הפסוקים...................................... 4 12..................................... הגדרות וסימונים 4.1 13....................... תכונות פשוטות של מערכת הוכחה 4.1.1 13..... מערכת הוכחה לתחשיב הפסוקים HPC) (Hilbert Propositional Calculus- 4.2 14..................................... משפט הדדוקציה 4.3 15 משפט הנאותות ל C. HP................................ 4.4 17................................. משפט השלמות ל C HP 4.5 18 קבוצה עקבית....................................... 4.6 21 משפט הקומפקטיות.................................... 4.7 21 שימושים..................................... 4.7.1 22 גדירות........................................... 4.8 www.cs.tau.ac.il/~pomerantz 1
25 תחשיב היחסים / לוגיקה מסדר ראשון II 25..................................... הגדרות ומשפטים בסיסיים 1 25.................................. נוסחאות מעל מילון σ 1.1 26................................ משתנים חופשיים וקשורים 1.2 27........................................... מבנה 1.3 28 ערך של שם עצם תחת השמה v במבנה. M.................. 1.3.1 28........................ הגדרת ערך האמת בלוגיקה מסדר ראשון 1.4 29........................................ מושגי יסוד סמנטיים 2 31 הצבה של שם עצם למשתנה................................ 2.1 33 צורות קנוניות....................................... 2.2 33................................... גדירות יחסים במבנה 2.3 35........................................... בדיקת ספיקות 3 37 תכונות של מבנה הרברנד................................. 3.1 39 בדיקת תקפות............................................ 4 39 משפט הקומפקטיות בתחשיב היחסים........................... 4.1 39...................... דוגמה לשימוש במשפט הקומפקטיות 4.1.1 40............................. לוגיקה מסדר ראשון עם סימן = 4.2 42 בעיית התקפות אינה כריעה................................ 4.3 43 מילון עבורו ניתן להכריע את בעיית התקפות.................. 4.3.1 44 מערכת הוכחה ללוגיקה מסדר ראשון................................ 5 44................................ משפטי השלמות והנאותות 5.1 45..................................... משפט הדדוקציה 5.2 46.................................... משפט הדיכוטומיה 5.3 48............................................... המבחן 6
0.1 גיאומטריה אוקלידית תוכן עניינים 0.1 גיאומטריה אוקלידית אקסיומות אוקלידס דרך כל שתי נקודות עובר ישר אחד בלבד. 2 ישרים נחתכים לכל היותר בנק' אחת. בהינתן ישר ונק' מחוצה לו, ניתן להעביר מקביל לישר דרך הנק'.. בעזרת האקסיומות ניתן להוכיח, בין היתר: סכום הזוויות במשולש 180. במשולש שווה שוקיים זוויות הבסיס שוות.. אחת השאלות שנשארה פתוחה (ללא תשובה) במשך כ 2000 שנה היא: האם אקסיומת המקבילים "נחוצה"? והאם היא "נכונה"? נכונות: תלוי. 0.2 טענות וטיעון תקף טענה F. = m a טענה זו תלויה בעולם. טענה: אם לכל x, y מתקיים x y = y x אז אם F = m a אז מתקיים.F = a m זו טענה שנכונותה אינה תלויה בעולם. אנחנו נרצה להבין אילו טענות תלויות בעולם ואילו טענות מהוות "טיעונים תקפים". הגדרה 0.1 טיעון הוא תקף אם בכל פעם שההנחות נכונות גם המסקנה נכונה. דוגמאות: כל החייזרים בכיתה לובשים שחור. אם היום יום שני אז מחר יום רביעי. כל עורב הוא שחור. שחור הוא צבע. לכן עורב הוא צבע. יש כפל משמעות. דוגמה לטיעון לא תקף: אין אדם בלי חסרונות. לדני למיצי יש חסרונות, לכן דני מיצי בן אדם. בקורס נלמד לזהות טיעונים תקפים ונלמד איך להוכיח תקפות של טיעונים. 0.3 אינדוקצית מבנה דוגמה: איך מתארים קבוצה? למשל ע"י רשימת איבריה. איך נתאר את קב' קרובי המשפחה שלנו? תיאור ע"י רשימת איברי הקבוצה, קצת מסובך. שיטה אחרת: משפחה גרעינית: אני, אחיי, אחיותי, הוריי, ילדיי, אשתי. כלל: אם פלוני/ת הורה, ילד, אח, אחות, בן/בת זוג של מישהו בקבוצה אז הוא גם בקבוצה. קבוצת קרובי המשפחה שלי היא קבוצת האנשים המינימלית שמכילה את המשפחה הגרעינית (בסיס) וסגורה להפעלת הכלל. F. וסגורה לפעולות ב B אוסף פונקציות. רצינו לבנות קבוצה המכילה את F קבוצת בסיס. B דוגמה: {0} =,B F = {+1} ו N סגורה ל F שמכילה את.B 1
0.3 אינדוקצית מבנה תוכן עניינים 0.3.1 בניית קבוצה באינדוקציה Ω קבוצה (עולם) B Ω קבוצת בסיס f n,i : Ω n Ω היא פונקציה f n,i F קבוצת פונקציות כך שכל F נסמן ב X B,F את הקבוצה המוגדרת באינדוקציה ע" י B ו X B,F F. ההיא הקבוצה המקיימת את הדרישות הבאות: B X B,F.1.2 לכל f n,i F ולכל x 1,..., x n X B,F גם f n,i (x 1,..., x n ) X B,F.3 B,F X מינימלית משפט 0.2 קיימת קבוצה X B,F המקיימת 1,2 ו 3..Ω Y למשל.Y = {A A Ω and הוכחה: תהי 1,2} satises.x = A Y נגדיר כעת: A נטען ש X מקיימת את.1,2 כיוון שלכל A Y מתקיים B A הרי B X לכן X מקיימת את.1 לגבי :2 תהי f n,i F פונקציה כלשהי. יהיו,x 1,..., x n X נרצה להוכיח ש X.f n,i (x 1,..., x n ) מההגדרה, לכל A Y חייב להתקיים x 1,..., x n A ו A מקיימת את.2 לכן f n,i (x 1,..., x n ) A ואז.f n,i (x 1,.., x n ) A Y A = X ראינו כי X מקיימת את 1,2. מינימליות: נובע מההגדרה כי אם T מקיימת את דרישות 1,2 אז X. T (יחידות: אותו הדבר) אם X מקיים 1,2,3 אזי מהגדרה X X ולכן או X X (בסתירה למינימליות (X או X.X = הערה X B,F 0.3 יקרא הסגור של B תחת הפעולות ב F. משפט 0.4 משפט ההוכחה באינדוקציה אם A קבוצה המקיימת: B A.1.2 לכל f n,i F ולכל x 1,..., x n A מתקיים f n,i (x 1,.., x n ) A אזי.X B,F A הערה 0.5 בתיכון, רוצים להראות שאיזושהי טענה מתקיימת למספרים הטבעיים. N A = {all elements that the claim is true for} בהוכחה באינדוקציה אנו מראים:.1 A 0 0) מקיים את הטענה) 2. שאם n מקיים את הטענה אז כך גם + 1 n. ומכאן מסיקים שהסגור {0},{+1} X.A 0.3.2 סדרת יצירה/בניה דוגמה: {0} =,B.F = {+1} סדרה יצירה עבור.0, 0 + 1, 0 + 2 :2 הגדרה 0.6 סדרת יצירה עבור a X B,F היא סדרה סופית a 1,.., a k כך שמתקיים: a = a k.1 2. כל a i מקיים a i B או התקבל מהפעלת פונקציה ב F על איברים קודמים בסדרה. הערה 0.7 סדרת יצירה תמיד סופית. 2
0.3 אינדוקצית מבנה תוכן עניינים a X B,F אם ורק אם יש ל a סדרת יצירה. משפט 0.8 הוכחה: : נגדיר Y = {a a has a creation series} נראה כי X B,F Y ע"י אינדוקצית מבנה. צ"ל ש.B Y יהי ;b B סדרת היצירה של b היא.b כעת צריך להראות סגירות Y תחת F. אז צ"ל אם f n,i F ו x 1,..., x n Y אזי.f n,i (x 1,..., x n ) Y אכן, יהיו x 1,..., x n Y ו ;f n,i F נבנה את סדרת היצירה. כיוון ש,x 1,.., x n Y יש להם סדרות יצירה: x 1 1,.., x 1 m 1,..., x n 1,.., x n m n, f n,i (x 1,..., x n ).f n,i (x 1,..., x n קל לוודא שזוהי סדרת יצירה ל ( סדרת יצירה של.x 1 x 1 1,.., x 1 m 1 כש ממשפט ההוכחה באינדוקציה נובע כי X. B,F Y לכן, לכל איבר ב X B,F יש סדרת יצירה. : נסמן ב Xאת n קבוצת האיברים להם יש סדרת יצירה באורך n. נראה כי X n X B,F n N נוכיח זאת באינדוקציה על הטבעיים. ואז: X= 1 קבוצת האיברים להם יש סדרת יצירה באורך 1. דהיינו,.X 1 = B נניח שהראינו כי X 1,..., X n X B,F ונראה זאת ל n+1.x יהי n+1.a X ל a סדרת יצירה באורך + 1 :n. x 1,..., x n, a נובע ש x n X n ובאופן כללי,.x i X i בפרט, מהנחת האינדוקציה,.x 1,..., x n X B,F כעת אם a B אז בוודאי.a X B,F אחרת, a התקבל מהפעלת f F על איברים קודמים בסדרה. כיוון שכל איברי הסדרה הקודמים ל a ב X B,F ו X B,F סגורה להפעלת ;f נקבל כי a X B,F כנדרש. Σ = {Finite words created by Σ} דוגמה: שפת ה aba. Ω = {a, b} עבור קבוצה Σ נסמן {a, b} = {ε, a, b, aa, ab, ba, bb,...} {a} = {ε, a, aa, aaa,...} אז עבור Ω כנ"ל ו { ab } B = נגדיר פעולות: f 1 (w) = waba למשל אם אין רצף כזה אז f. 2 (w) = w (w) f =מחיקת 2 רצף aa ימני ביותר וכתיבת b במקומו. f 2 (aaaa) = aab ab, } ababa {{}, } ababaaba {{}, } ababbba {{}, abaa f 1(ab) f 1(ababa) f 2(ababaaba).bbb רצף ימני ביותר של f =מחיקת 3 (w) }{{} f 3(ababbba) דוגמה: נראה כי abb נמצאת בשפה:, abb }{{} f 2(abaa) 3
0.3 אינדוקצית מבנה תוכן עניינים דוגמה: הראו כי aba לא בשפה. איך מראים שאיבר אינו ב X? B,F רעיון: מוצאים תכונה שמפרידה את האיבר מאברי X. B,F תכונה: ב w מספר אי זוגי של a. טענה ברורה: ל aba אין את התכונה. תהי Y = {w There is an odd number of as in w} ברור כי.aba / Y טענה.X B,F Y 0.9 הוכחה: B Y כי.ab Y תהי.w Y צריך להראות ש.f 1 (w), f 2 (w), f 3 (w) Y f 2, באופן דומה עבור f 3.f 1 (w) Y בגלל ש אי זוגי+ 2 =אי זוגי נקבל ש.f 1 (w) = waba לכן לפי משפט האינדוקציה X. B,F Y 4
חלק I תחשיב הפסוקים תאור לא פורמלי: אותיות: P 0, P 1,... קשרים:,,,, מהם נבנה ביטויים מורכבים. 2 הרצאה ביטוי: סדרה סופית של סימנים: N}.Σ = {(, ),,,,, } {P i i קבוצת הביטויים תהיה:.Σ נגדיר כעת את אוסף הביטויים החוקיים, בהגדרה אידוקטיבית. בסיס: פסוקים / נוסחאות אטומיות: N} B = {P i i פעולות: } F,F = {F, F, F, F, כאשר: 15.3.15 F (a, b) = (a b) F (a, b) = (a b) F (a) = ( a). קבוצת הביטויים החוקיים Formulas) :(WFF - Well Formed הסגור של B ביחס ל F. דוגמאות: ) 2 (P 1 P ביטוי חוקי. הסבר P 1, P 2 B ואז הסדרה היא P 1, P 2, F (P 1, P 2 ) P 1 ( P 2 אינו ביטוי חוקי P 1 P 2 אינו ביטוי חוקי טענה 0.10 כל ביטוי חוקי (WFF) הוא פסוק אטומי או מתחיל ב ) ונגמר ב (. הוכחה: תהי Σ Y הקב' המכילה את B ואת כל הביטויים שמתחילים ב ) ונגמרים ב (. נרצה להראות ש.X B,F Y ברור כי B Y (לפי ההגדרה). נשאר להראות סגירות תחת F: בודקים כל אחת מהפונקציות ורואים שכן. ממשפט ההוכחה באינדוקציה.W F F = X B,F Y לפי הטענה נוכל להסיק ששתי הדוגמאות הנ"ל אכן אינן ביטויים חוקיים. נוכיח טענה פשוטה נוספת שתשמש אותנו בהמשך: טענה 0.11 בכל ביטוי חוקי ) # = (.# הוכחה: =Y קבוצת כל הביטויים e כך ש ( e ) (e) = # ) (.# ברור ש.B Y סגירות תחת F: יהיו,α. β Y למשל אם ב α יש n סוגריים מכל סוג וב β יש k סוגריים מכל סוג, אז ב ( β (α יש + 1 k n + סוגריים מכל סוג. באותו אופן לכל יתר הפונקציות. הערה ) 0.12 2 (P 1 P ו ( P )הם 2 P 1 ביטויים שונים. 5
1 עצי יצירה (גזירה) 1 עצי יצירה (גזירה) (( P 1 ) (P 2 P 1 )) עבור פסוק זה עץ הגזירה יהיה: P 1 P 2 P 1 op הגדרה 1.1 לפסוק אטומי P i נתאים את העץ P i. לפסוק (β α) op נתאים את העץ atree btree לפסוק (α ) יתאים העץ atree משפט 1.2 משפט הקריאה היחידה לכל α W F F מתקיים בדיוק אחד מהבאים: 1. α פסוק אטומי.2 קיימים פסוקים יחידים β, γ W F F כך ש ( γ α = (β.3 קיימים פסוקים יחידים β, γ W F F כך ש ( γ α = (β.4 קיימים פסוקים יחידים β, γ W F F כך ש ( γ α = (β.5 קיימים פסוקים יחידים β, γ W F F כך ש ( γ α = (β.6 קיים פסוק יחיד β W F F כך ש ( β ) α = משפט 1.3 ניסוח שקול של משפט הקריאה היחידה לכל פסוק α W F F מתקיים שני הבאים:.1 אם יש פסוקים β, γ W F F ו {,,, {, op כך ש ( γ αאז = (β op לכל זוג פסוקים γ β, ו {,,, {, op אם ) γ α = (β op אז בהכרח β.γ = γ, op = op, β =.2 אם יש פסוק β W F F כך ש β α = אין פסוקים γ, δ W F F ו {,,, {, op כך ש ( δ α = (γ op וגם אם ϕ W F F מקיים ( ϕ) α = אז.ϕ = β אלגוריתם לבדיקה האם Σ α הוא ב?W F F 1. אם α פסוק אטומי אז נאמר α. W F F אם לא, ממשיכים. 2. אם α מתחיל ב ) ונגמר ב ( אז נמחק אותם ונמשיך ל 3. אחרת נאמר ש α אינו ב W. F F 3. אם הסימן הראשון הוא נמשיך ל 4. אחרת ל 5. 4. נמחק את ונחזור ל 1. 5. נעבור על הפסוק משמאל לימין עד שמספר הסוגריים השמאליים יהיה שווה למספר הימניים (נמצא את "האיבר השמאלי"). נקודת השוויון היא מיד לאחר הסוגר הימני שמשיג את השוויון:...)... אם הגענו לקשר דו מקומי (,,,, ) נמחק אותו ונריץ שוב את האלגוריתם עבור סדרת הסימנים משמאל לקשר וסדרת הסימנים מימין לקשר. אם לא הגענו לקשר דו מקומי או שאין נקודת שוויון נאמר ש α אינו ב W. F F אם הביטוי הימני או השמאלי לא ב W F F נאמר ש α אינו ב.W F F לבסוף נודיע ש.α W F F הוכחה: תרגיל. אפשר באינדוקציה על מספר הסימנים ולהראות שלפסוק שמתקבל באלגוריתם יש סדרת יצירה. 6
1.1 סדר קדימויות על קשרים 2 טיעון תקף דוגמה: הפסוק: ) 2 P). 1 P 1 לא מתקיים, עוברים ל 2. אז P 1 P 2 ונעבור ל 3. נעבור ישר ל 5. שולחים את P 1, P 2 ל 1. 1.1 סדר קדימויות על קשרים,, דוגמה: הביטוי P 1 P 2 P 3 מתאים לביטוי (( P 1 ) (P 2 P 3 )) הערה 1.4 צריך לנהוג בזהירות! (P 1 P 2 ) P 3 P 1 (P 2 P 3 ) P 1 P 2 P 3 ((P 1 P 2 ) P 3 ) (P 1 (P 2 P 3 )) הגדרה {, } 1.5 F 1 W F בסיס: N} B = {P i i פעולות: } F F = {F, {, } F W F הוא הסגור. 2 טיעון תקף הגדרה 2.1 (תזכורת) טיעון תקף: טענה שמסקנתה נכונה בכל פעם שההנחות נכונות. דוגמה (אינטואיציה) ) 1 ((P 1 P 2 ) P מה שיעניין אותנו כדי לדעת האם ביטוי "נכון" או לא, זה רק האם ה"הנחות" ) j P) 1,,... P "נכונות" או לא. דהיינו, האם P i נכון או לא נכון. בהגדרת הסמנטיקה בתחשיב הפסוקים נשתמש בסימון הבא: t : true f : false נרצה ליצור קשר בין "ערך האמת" של פסוק α לערכי האמת של המשתנים. 1 באותו אופן מוגדרות {, } F W F או {, } F W F 7
2.1 הגדרת ערך האמת 2 טיעון תקף (t) 2.1 הגדרת ערך האמת אינטואיציה: )) 1 (( P 1 ) (P 2 P (f) (f) P 1 (t) P 2 (f) P 3 (t) ערכי האמת יחלחלו במעלה עץ היצירה, בהתאם לאופן בו הקשרים פועלים.... P 1 P 2 (P 1 P 2 ) f f f f t f t f f t t t טבלאות האמת של הקשרים 2.1.1 P 1 ( P 1 ) α = (P 1 P 2 ), אז f t ) 1 α = ( P t f הגדרה 2.2 השמה 2 היא פונקציה v : {P i i N} {t, f} הגדרה 2.3 בהינתן השמה t},v : {P i i N} {f, נגדיר את ערך האמת 3 v : W F F {t, f} יהי α W F F אם α פסוק אטומי, נגדיר v(α) v(α) = אם γ) α = (β op אז (עבור T T op טבלת האמת של (op v(α) = T T op ( v(β), v(γ)) אם ( β) α = אז ( v(β)) v(α) = T T משפט 2.4 משפט הגדרת ערך האמת: ערך האמת (כמו שהגדרנו אותו) מוגדר היטב, ובפרט יחיד. טענה 2.5 אם כל המשתנים המופיעים ב α הם מהקבוצה } n P} 1,,... P ו z,v השמות המסכימות על משתנים אלו (דהיינו, ) i i n, v(p i ) = z(p,( 1 אזי v(α) = z(α) הוכחה: באינדוקציה. עכשיו אפשר להגדיר את טבלת האמת של כל פסוק α. אם ב α מופיעים המשתנים P 1,,... P n אז בטבלה יש 2 n שורות. P 1... P n α f... f f.. t... t t אפשר לשאול, האם כל טבלת אמת ניתנת למימוש ע"י פסוק ב W? F F 2 אלכס (מרצה אחר) קורא להשמה סביבה 3 אלכס מסמן [ α ] v וארנון מסמן v(α) ולא מבדיל בין השמה לערך האמת 8
3 סימונים ומושגים סמנטיים בסיסיים 2.2 שלמות פונקציונלית 2.2 שלמות פונקציונלית קבוצת קשרים היא שלמה (פונקציונלית) 4 אם ניתן להביע בעזרתה כל טבלת אמת. טענה } 2.6, {, שלמה פונקציונלית. הוכחה: (סקיצה) למשל אם בטבלה יש 3 עמודות, ובשורה מסוימת מופיע P 1 = t, P 2 = t, P 3 = f ו t α = נתאים לשורה את הביטוי ((P 1 P 2 ) ( P 3 )) לכל שורה בטבלה בה הערך הוא t נגדיר את הפסוק המתאים המקבל את הערך t על השורה הזאת בלבד (הנ"ל). ניקח (בסדר כלשהו) על כל הפסוקים האלו. טענה { 2.7, } ו {, } שלמות פונקציונלית. הוכחה: בתרגיל. דוגמה: {, } לא שלמה פונקציונלית אי אפשר להביע את. 3 סימונים ומושגים סמנטיים בסיסיים אם v(α) = t נסמן v = α ונאמר כי v מספקת את.α נאמר כי α ספיקה, אם יש השמה v כך ש α v. = נאמר כי α טאוטולוגיה אם לכל השמה v מתקיים v. = α למשל: ((P 1 P 2 ) P 1 ) (P 1 ( P 1 )) α יקרא סתירה אם לא קיימת השמה v כך ש α (α v = טאוטולוגיה) נאמר כי פסוק α שקול לפסוק β אם לכל השמה v מתקיים v(α) = v(β) ונסמן.a β קבוצת נוסחאות Γ היא ספיקה אם יש השמה v כך שלכל v(α) = t,α Γ ונסמן.v = Γ לדוגמה, הקבוצה } 3 Γ = {P 1, P 2, P היא ספיקה אם v(p 1 ) = v(p 2 ) = v(p 3 ) = t ולכן,v = Γ מצד שני הקבוצה )} 1 Γ = {P 1, ( P אינה ספיקה, נוכיח זאת: תהי v השמה כלשהי, מהגדרת ערך האמת ) 1 v( P 1 ) = T T (v(p 1 )) v(p כאשר אי השיוויון נובע מהתבוננות בטבלת האמת של, ולכן לא ייתכן ששני ערכי האמת הם t ולכן v. = Γ.Γ = α ומסמנים v = α אזי v = Γ מתקים: אם v לכל אם נובעת סמנטית מ Γ α 3 הרצאה 22.3.15 כתב נדב קרן נשים לב כי ישנן שקילויות שהוכחנו במתמטיקה בדידה אשר יש צורך להוכיח אותם מחדש בעולם מונחים זה, לדוגמא נתבונן במקרה הבינארי של כלל דה מורגן: (α β) ( α) ( β) v( (α β)) T T ( v(α β)) v( (α β)) T T (T T (v(α), v(β))) 4 קיצור ש"פ 9
3 סימונים ומושגים סמנטיים בסיסיים 3.1 הצבות ((α (β γ)) ((α β) (α γ))) 3.0.1 מסקנות חשובות 1. טאוטולוגיה: 2. שקילויות: (α β) γ α (β γ) (α β) γ (α γ) (β γ) (α β) (β α) (α β) (β α) ( α) α.3 אם Γ {α} = β וגם Γ { α} = β אזי.Γ = β.4 אם Γ { α) = β וגם Γ { α) = β אזי.Γ = α נוכיח: תהי,v אם v = Γ אזי לא ייתכן v = α כי אחרת, מההנחה נקבל כי ( β),v = β, לכן אם v = Γ אזי.v = α.5 אם Γ { α} = α אזי.Γ = α.6 אם α β אזי.{α} = β.{α} = β אם"ם = (α β).7.8 } n {α 1,..., α ספיקה אם"ם α 1 α n ספיק..9 אם Γ 1 Γ 2 ו α Γ 1 = אזי.Γ 2 = α 3.1 הצבות נשים לב שישנם ביטויים, כגון (β α) ו ( P) 1 P 2 שיש ביניהם דימיון, בדוגמא זו, אם נחשוב על α כ P, 1 ו β כ P 2 אז זהו אותו הביטוי. החלפת פסוק אטומי בנוסחא נקראת הצבה. הגדרה 3.1 תהיינה,ϕ α נוסחאות ו P 1 פסוק אטומי, נגדיר כעת את ) 1 ϕ(α/p על ידי: אם ϕ הוא פסוק אטומי, אזי { α ϕ = P 1 ϕ(a/p 1 ) = ϕ ϕ P 1 ϕ(α/p 1 ) = ( ψ(α/p 1 )) ϕ(α/p 1 ) = (ψ(α/p 1 ) op γ(α/p 1 )) אם ( ψ) ϕ = אזי ואם γ) ϕ = (ψ op אזי טענה 3.2 לכל ϕ, α W F F מתקיים כי ϕ(α/p 1 ) W F F 10
3 סימונים ומושגים סמנטיים בסיסיים 3.1 הצבות הגדרה 3.3 (לא פורמלית) ) n,ϕ(α 1 /P 1,... α n /P בסיס: פסוק אטומי, נגדיר באופן דומה להגדרה הקודמת :(3.1) α 1 ϕ = P 1 α 2 ϕ = P 2 ϕ(α 1 /P 1,... α n /P n ) =.. α n ϕ ϕ = P n otherwise נשים לב כי נחוצה לנו הגדרה שונה עבור הצבה סימולטנית של מספר פסוקים שונים. לדוגמא, אם ϕ = P 1, α 1 = P 2, α 2 = P 3 אז לפי ההצבה ב 3.3 נקבל: ϕ(α 1 /P 1, α 2 /P 2 ) = α 1 = P 2 ואילו ( ϕ(α1 /P 1 ) ) (α 2 /P 2 ) = α 2 = P 3 וקיבלנו תוצאות שונות, מכאן שאין שקילות בין ההצבה שהגדרנו ב 3.3 להצבות חוזרות כפי שהוגדרו ב 3.1! בהצבות מרובות נשתמש רק בהגדרה 3.3 כעת, נשאל את עצמנו מה הקשר בין ערך האמת של ) 1 ϕ(α 1 P/ לזה של ϕ? בהנתן השמה v נגדיר השמה חדשה v על ידי: { v v(α 1 ) i = 1 (P 1 ) = v(p i ) i 1 טענה 3.4 עבור השמה v וההשמה שהגדרנו,v מתקיים כי )) 1. v (ϕ) = v(ϕ(α 1 /P הוכחה: נוכיח באינדוקציית מבנה. נגדיר )} 1 ;Y = {ψ v (ψ) = v(ψ(α 1 /P בסיס: ψ הוא פסוק אטומי, וישנם שני מקרים אפשריים: אם,ψ = P 1 אז: v (ψ) = v (P 1 ) = v (P 1 ) = v(α 1 ) כאשר השיוויון הראשון נובע מכך ש,ψ = P 1 השני מהגדרת v והשלישי מהגדרת.v ונשים לב כי = )) 1 v(ψ(α 1 /P.v(α 1 ) אם ψ P 1 אז: v (ψ) = v (ψ) = v(ψ) ומכוון ש ( v(ψ.ψ(α 1 /P 1 ) = ψ v(ψ(α 1 /P 1 )) = v(ψ) = נוכיח סגירות: יהיו,γ, δ Y אז נוכיח כי ( γ) Y ו.(γ op δ) Y v (γ op δ) = T T op (v (γ), v (δ)) (γ op δ)(α/p 1 ) = (γ(α/p 1 ) op δ(α/p 1 )) v((γ op δ)(α/p 1 )) = v(γ(α/p 1 ) op δ(α/p 1 )) = = T T op ( v(γ(α/p1 ), v(δ(α/p 1 )) ) מסקנה 3.5 אם ϕ הוא טאוטולוגיה, אז כך גם ) n ϕ(α 1 /P 1,..., α n /P לכל.α 1..., α n W F F 11
4 הוכחה בתחשיב הפסוקים 3.2 צורות נורמליות Forms) (Normal 3.2 צורות נורמליות Forms) (Normal הגדרה 3.6 נגדיר את הצורה הנורמלית (Negation Normal Form) NNF באופן אינדוקטיבי כסגור של הבסיס.F = {f, f } והפעולות,B = {P i i N} {( P i ) i N} טענה 3.7 לכל α W F F קיים α NNF כך ש α.α הוכחה: את טענה זו הוכחנו כאשר הוכחנו כי {,, } היא קבוצת קשרים שלמה, כלומר קיים β המכיל רק את 2 n כאשר ϕ i מהצורה... 3 p 1 p 2 p הקשרים,, כך ש α,β וראינו שניתן לקחת β מהצורה i=1 ϕ i בפרט β בצורת.NNF הגדרה 3.8 נגדיר את Conj להיות הסגור של הבסיס N} B = {P i i N} {( P i ) i עם הפעולה f.f = הגדרה 3.9 נגדיר את הצורה הנורמלית (Disjunctive Normal Form) DNF להיות הסגור של הבסיס Conj עם הפעולה } {f.f = טענה 3.10 לכל α W F F קיים β DNF כך ש.α β הגדרה 3.11 נגדיר את Disj להיות הסגור של הבסיס N} B = {P i i N} {( P i ) i עם הפעולה } {f.f = הגדרה 3.12 נגדיר את הצורה נורמלית (Conjunctive Normal Form) CNF כסגור של הבסיס Disj עם הפעולה.F = {f } טענה 3.13 לכל α W F F קיים β CNF כך ש.α β הוכחה: לפי משפט ה,DNF קיים פסוק γ כך ש γ DNF ו α γ. כיוון ש γ, DNF יש פסוקים,ϕ 1,..., ϕ k Conj כך ש γ ϕ 1... ϕ k לפי חוקי דה מורגן ושקילות לוגית γ ϕ 1... ϕ k וגם ϕ i Disj אז נקבל את הדרוש. הערה 3.14 ניתן לשאול מספר שאלות אלגוריתמיות על ביטויים אלו: בהנתן פסוק α בעל n משתנים, האם הוא ספיק? ניתן לעבור על 2 n ההצבות הקיימות ולבדוק אותן, השאלה הנשאלת האם יש אפשרות יותר טובה? ) P (?NP = כמו כן, בהנתן פסוק α, איך מוצאים פסוק שקול לו α ב?NNF/DNF/CNF מה הסיבוכיות של מציאת DNF מינימלי לפסוק α? 4 הוכחה בתחשיב הפסוקים 4.1 הגדרות וסימונים באופן אבסטרקטי מערכת הוכחה מורכבת מהבאים: {P i והפעולות },,,,.({.1 אלפבית (אצלנו הפסוקים N} i 2. נוסחאות מעל האלפבית (אצלנו ה WFF ). 3. קבוצת נוסחאות הנקראות אקסיומות A. 4. כללי היסק F. פסוק ϕ הוא יכיח מקבוצת הנחות Γ, אם הוא שייך לסגור של הקבוצה Γ A עם הפעולות ב F. הוכחה של פסוק ϕ מהנחות Γ: הצגת סדרת יצירה של ϕ בשביל להראות שהוא בסגור הנ"ל. 12
4 הוכחה בתחשיב הפסוקים 4.2 מערכת הוכחה לתחשיב הפסוקים HPC) (Hilbert Propositional Calculus- S. במערכת יכיח (ניתן להוכחה) מ Γ ϕ אם Γ s סימונים: עבור מערכת הוכחה S, נסמן ϕ (כלומר לא נדרשות הנחות נוספות Γ). s כמו כן נאמר כי ϕ משפט של S אם ϕ 4.1.1 תכונות פשוטות של מערכת הוכחה.Γ s ו Γ אזי ϕ s 1. מונוטוניות: אם ϕ. s סופית כך ש ϕ, Γ אז יש Γ s 2. קומפקטיות: אם ϕ.γ s ϕ אזי Γ s ולכל α מתקיים כי α s 3. טרנזיטיביות: אם ϕ רעיון ההוכחה: בסדרת היצירה של ϕ מ נחליף כל הנחה מ בסידרת היצירה שלה מ Γ. 4.2 מערכת הוכחה לתחשיב הפסוקים HPC) (Hilbert Propositional Calculus- (מערכת זו היא ואריציה על המערכת של מנדלסון פרגה) נגדיר את מערכת זו על ידי: {P i עם הפעולות )}, (,, {.1 אלפבית: הסגור של הבסיס N} i.2 נוסחאות {, } F W F.3 אקסיומות :A MP ((α β), α) = β MP : α (β α) :A 1 (α (β γ)) ((α β) (α γ)) :A 2 ( β α) (α β) :A 3 4. כללי היסק F: כוללים את Modus Ponens (כלל הניתוק) (α β), α β = already proven formula from MP כלומר אם ידוע כי (β α) וגם α נכון, אזי ניתן להסיק כי β נכון. מהי הוכחה? כל נוסחה בהוכחה: אקסיומה, הנחה או מתקבלת מאחד מכללי ההיסק. 4 הרצאה 29.3.15 הגדרה 4.1 משפט ב C :HP כל פסוק α כך ש α HP C באופן אחר: בסיס: אקסיומות, פעולה: M, P סגור: משפטים של.HP C דוגמא: 5 (α α) HP C A 1 :α ((α α) α) (1) A 2 : (α ((α α) α)) ((α (α α)) (α α)) (2) MP (1, 2) : ((α (α α)) (α α)) (3) A 1 :α (α α) (4) MP :α α (5) 5 נסמן (j MP,i) ביצוע הפעולה MP על שורות i ו j 13
4 הוכחה בתחשיב הפסוקים 4.3 משפט הדדוקציה דוגמא: לכל,α, β (( α) (α β)) HP C A 3 : ( β α) (α β) (1) }{{} E A 1 :E ( α E) (2) MP (1, 2) : ( α E) (3) E {}}{ A 2 : }{{} α ( β α) (α β) ( α ( β α)) ( α (α β)) (4) }{{}}{{}}{{} x (y z) (x y) (x z) MP (3, 4) : ( α ( β α)) ( α (α β)) (5) A 1 : α ( β α) (6) MP (5, 6) : α (α β) (7) { α} (α β) דוגמא: 6 הוכחה: הוכחה 1 (לעצלנים): ראינו β)) ( α (α. נכתוב את ההוכחה שוב. אז נוסיף α (הנחה) ולפי (α β) MP הוכחה: הוכחה 2: A 1 : α ( β a) (1) assumption α (2) MP (1, 2) : ( β α) (3) A 3 : ( β α) (α β) (4) MP (3, 4) : α β (5) מסקנה 4.2 אם α, אזי לכל {α} β :β הוכחה: ראינו ש ( β α (α ונתון α, אז לפי (α β) MP כלומר.{α} β 4.3 משפט הדדוקציה משפט 4.3 לכל קבוצת פסוקים {, } F,Γ W F ולכל זוג פסוקים {, } F,α, β W F מתקיים: Γ {α} β אם ורק אם Γ (α β) הוכחה: : נניח β).γ (α ממונוטוניות β) α.γ {α} (α הנחה מתוך {α} Γ ולפי.β :MP : ההוכחה באינדוקצית מבנה. Y = { ϕ W F F {, } Γ (α ϕ) } HP C HP C 6 נשתמש ב, ואם לא נאמר אחרת אז מתכוונים ל HP C 14
4 הוכחה בתחשיב הפסוקים 4.4 משפט הנאותות ל C HP סימון: עבור קבוצת נוסחאות,Σ נסמן ψ}.ded (Σ) = {ψ Σ נרצה להוכיח ש.Ded (Γ {α}) Y כזכור (Σ) Ded היא קבוצה סגורה; בסיס: אקסיומות, הנחות. פעולה: M. P נראה כי האקסיומות וכן {α} Γ נמצאים ב Y. תהי ψ אקסיומה או נוסחה מ Γ. צ"ל: (ψ Γ: α) axiom or assumption A 1 : ψ (α ψ) ψ MP : (α ψ) סגירות ל :MP נניח.(γ δ), γ Y צ"ל:.δ Y ידוע ש ( γ Γ α (γ δ),γ (α וצ"ל: δ) Γ (α A 2 : (α (γ δ)) ((α γ) (α δ)) (1) known Γ α (γ δ) (2) MP (1, 2) : (α γ) (α δ) (3) known Γ (α γ) (4) MP (3, 4) : (α δ) (5) לכן ממשפט האינדוקציה נקבל Ded (Γ {α}) Y כדרוש. לכל פסוק {, } F α W F מתקיים α) ( α דוגמא: הוכחה: לפי משפט הדדוקציה, די להוכיח {α }. α הראינו כבר שלכל,γ δ מתקיים γ (γ δ) ובפרט, ( α) ( α α) (1) assumption α (2) MP (1, 2) : α α (3) A 3 : ( α α) ( α α) (4) MP (3, 4) : α α (5) Γ α α (6) דוגמא: β) (β לכל.β הוכחה: תרגיל. 4.4 משפט הנאותות ל C HP משפט 4.4 משפט הנאותות ל C :HP לכל קבוצת פסוקים {, } F Γ W F ולכל {, } F,α W F אם Γ α Γ α אז מסקנה 4.5 אם Γ ספיקה, אז לא ניתן להוכיח סתירות מ Γ. 15
4 הוכחה בתחשיב הפסוקים 4.4 משפט הנאותות ל C HP Y = {ϕ Γ ϕ} Ded (Γ) Y הוכחה: באינדוקציית מבנה; רוצים להראות כי: בסיס: תהי ϕ אקסיומה. צ"ל:,ϕ Y דהיינו.Γ ϕ טענה 4.6 כל האקסיומות הן טאוטולוגיות. (בוודאי) נניח.ϕ ψ,ϕ Y נראה ש.ψ Y נתון: ψ).γ ϕ,γ (ϕ תהי v השמה כך ש Γ ;v מהנתון.v ψ חייב להתקיים T T אז לפי v ו ϕ v (ϕ ψ) משפט 4.7 משפט הדיכוטומיה (הוכחה לפי מקרים): לכל קבוצת פסוקים {, } F Γ W F ולכל {, } F, α, β W F אם Γ {α} β Γ { α} β Γ β וגם אזי למה 4.8 לכל,x, y, z, Γ אם z) Γ (y וגם y),γ (x אזי z) Γ (x הוכחה: (של הלמה) בלי משפט הדדוקציה: A 2 : (x (y z)) ((x y) (x z)) (1) A 1 : (y z) (x (y z)) (2) Γ (y z) (3) MP : x (y z) (4) MP : (x y) (x z) (5) Γ (x y) (6) MP : (x z) (7) הוכחה נוספת לפי משפט הדדוקציה: די להוכיח, Γ {x} z אז: Γ x y assumptions x y Γ y z MP : z הוכחה: הוכחת משפט הדיכוטומיה: לפי משפט הדדוקציה הנתון שקול ל Γ (α β) וגם Γ ( α β) 16
4.5 משפט השלמות ל C HP 4 הוכחה בתחשיב הפסוקים הראינו (כתרגיל, בדוגמה למשפט 4.3) (β β) לפי הלמה Γ ( α β) ולפי A 3 ו MP נקבל Γ ( β α) לפי הלמה עם x = β, y = α, z = β נקבל Γ ( β β) ואז: ex. above ( β (β ( β β))) (1) A 2 : ( β (β ( β β))) (( β β) ( β ( β β))) (2) MP (1, 2) : ( β β) ( β ( β β)) (3) MP : β ( β β) (4) A 3 : ( β ( β β)) (( β β) β) (5) MP : ( β β) β (6) MP : β (7) 4.5 משפט השלמות ל C HP משפט 4.9 לכל {, } F Γ W F ולכל {, } F,α W F אם Γ Γ α α HP C אזי ניתן לנסח את שני המשפטים יחד: Γ. משפט 4.10 משפט השלמות והנאותות: Γ α אם ורק אם α HP C משפט 4.11 ניסוח שקול למשפט השלמות: אם Γ α אז Γ α במילים: אם לא ניתן להוכיח את α מתוך Γ אז יש השמה v כך ש Γ v (מספקת) אבל v α אסטרטגיית ההוכחה: נתחיל מהעובדה Γ α ונבנה v כנ"ל. אנחנו רוצים להגיע למצב בו ל Γ יש "בעיה" על כל פסוק אטומי. 17
4.6 קבוצה עקבית 4 הוכחה בתחשיב הפסוקים קבוצה עקבית 4.6 הגדרה 4.12 קבוצת פסוקים Γ נקראת עקבית אם יש פסוק ϕ כך ש Γ ϕ טענה Γ 4.13 לא עקבית אם ורק אם קיים פסוק ϕ כך ש ϕ Γ וגם Γ. ϕ הוכחה: ex. above ϕ (ϕ β) (1) Γ ϕ (2) MP (1, 2) Γ β (3) כלומר לכל β מתקיים.Γ β הערה 4.14 מה הקשר בין עקביות למשפט השלמות: 5 הרצאה 12.4.15 וגם נניח כי Γ α נקבל כי { α} Γ עקבית, כי אם Γ { α} α אז כיוון ש α Γ {α} ונקבל מדיכוטומיה.Γ α משפט 4.15 כל קבוצה עקבית היא ספיקה בפרט יש השמה v שמקיימת: v α,v Γ (או ( v(α) = f ובפרט Γ α אנחנו רוצים של Γ תהיה "דעה" על כל פסוק אטומי (האם לתת לו ערך t או f?). אם לכל פסוק אטומי P היה מתקיים P Γ או P Γ ואז בוודאי ל P הייתה "דעה" עליו. רעיון ההוכחה: "ננפח" את Γ כך שנישאר עם קבוצה עקבית וגם לכל P, או P Γ או P. Γ הגדרה 4.16 קבוצה עקבית מקסימלית היא קבוצת פסוקים X, עקבית ולא קיימת קבוצה עקבית Y כך ש X. Y טענה Γ 4.17 עקבית אם ורק אם כל תת קבוצה סופית של Γ גם עקבית. הוכחה: : ברור. אם Γ α אז α אינו יכיח מאף תת קבוצה סופית Γ. : נניח כי Γ אינה עקבית ונראה שיש תת קבוצה סופית Γ Γ שאינה עקבית. כיוון ש Γ אינה עקבית יש.Γ β וגם Γ כך ש β β כיוון שהוכחה היא סופית, בהוכחה של β ובהוכחה של β השתמשנו במספר סופי של הנחות מתוך Γ. תהי Γ Γ תת קבוצה סופית המכילה את ההנחות הנ"ל. אזי (אותה הוכחה כמו Γ β,γ β מקודם) לכן, לפי טענה שהוכחנו, Γ אינה עקבית. Γ β Γ β טענה 4.18 אם X עקבית מקסימלית ו ϕ,x אזי.ϕ X הוכחה: נביט בקבוצה {ϕ} Y. = X בוודאי X. Y לכן, אם Y עקבית אז ממקסימליות של X מתקיים.Y ϕ אכן, נראה כי.ϕ X ובפרט X = Y אם כיוון ש X {ϕ} = Y ϕ X { ϕ} ϕ ממשפט הדיכוטומיה X ϕ בגלל שהנחנו X, ϕ לכן X לא עקבית בסתירה. 18
4.6 קבוצה עקבית 4 הוכחה בתחשיב הפסוקים טענה 4.19 לכל קבוצה עקבית מקסימלית X ולכל פסוק ϕ מתקיים ϕ X או ϕ. X הוכחה: אם {ϕ} X עקבית אז ממקסימליות X מתקיים ϕ X (כמו שכבר הראינו). אם {ϕ} X לא עקבית אז בפרט X {ϕ} ϕ ומכאן נובע (הראינו כבר בעזרת משפט הדיכוטומיה) ש ϕ X. מהטענה הקודמת נובע ש X ϕ. טענה 4.20 תהי X עקבית מקסימלית. אזי לכל,α β פסוקים מתקיים (β X α) אם ורק אם α X או.β X הוכחה: : לפי טענה 4.19 קודמת α X או. α X אם α X אז סיימנו. אם α X אזי assumption X (α β) X β HP C assumption α α X (α β) α (α β) מ MP נקבל: ולפי טענה 4.18 קודמת.β X : מקרה ראשון:. α X ראינו וע"י MP נקבל מקרה שני: β X A 1 : β (α β) assumption β MP : (α β) וקיבלנו X (α β) טענה 4.21 כל קבוצה עקבית מוכלת בקבוצה עקבית מקסימלית. הוכחה: כיוון ש W F F בת מניה, ניתן למנות את פסוקי W: F F W F F = {ϕ 1, ϕ 2, ϕ 3,...} נניח כי X קבוצה עקבית. נסמן X. 0 = X נגדיר באופן אינדוקטיבי: { X n 1 {ϕ n } X n 1 {ϕ n } is consistent X n = X n 1 { ϕ n } else Y = n N X n נגדיר כעת ברור כי X. = X 0 Y נראה כי Y עקבית מקסימלית. אם Y אינה עקבית, אז יש Y Y סופית שאינה עקבית. בפרט יש X n שאינה עקבית (כי כל Y Y סופית מוכלת באיזשהו X). n 19
4.6 קבוצה עקבית 4 הוכחה בתחשיב הפסוקים למה 4.22 נראה ש X n עקבית לכל n, באינדוקציה על n = 0 n. נתון, נניח ש 1 n X עקבית. הוכחה: (של הלמה) מקרה ראשון: } n X n = X n 1 {ϕ מהגדרת X n נקבל כי X n עקבית. מקרה שני: } n X 1 n ϕ} אינה עקבית. אם גם } n X 1 n ϕ } אינה עקבית אז ממשפט הדיכוטומיה נקבל ש n 1 X אינה עקבית בסתירה. לכן גם במקרה השני X n 1 { ϕ n } = X n עקבית. הראינו כי Y עקבית ונראה כי היא עקבית מקסימלית. מההגדרה ברור שלכל ϕ מתקיים ϕ Y או ϕ Y וכפי שכבר ראינו זה גורר ש Y עקבית מקסימלית. הערה 4.23 טיעון שחזר במשך היום: אם Z,Y Z עקבית. יהי.ϕ Z אם ϕ / Y אז ϕ Y בפרט ϕ Z לכן Z ϕ, ϕ ואז Z לא עקבית בסתירה. לכן ϕ Y ו.Z Y טענה 4.24 כל קבוצה עקבית מקסימלית ספיקה. הוכחה: תהי X קבוצה עקבית מקסימלית. נגדיר השמה v באופן הבא: { t P i X v (P i ) = f P i X ונראה כי (v v. X מוגדרת היטב כי X עקבית מקסימלית) נגדיר קבוצת פסוקים T: T = {ϕ (ϕ X and v(ϕ) = t) or (ϕ / X and v(ϕ) = f)} נוכיח באינדוקציית מבנה כי.W F F T בסיס: פסוקים אטומיים יהי P i כלשהו. אם P i X אז v(p i ) = v(p i ) = t ולכן.P i T אם P i / X אז P i X ונקבל כי v(p i ) = f ולכן, שוב.P i T נראה כי T סגורה. יהיו.α, β T צ"ל: α T וגם.(α β) T נראה כי. α T נפריד למקרים:.1 אם. v(α) = t,α X אז X) α / X עקבית). v(α) = t ייתן ש f. v ( α) = לכן קיבלנו ש X α / וגם v ( α) = f ומהגדרת. α T,T.2 אם X. v(α) = f,α / X מקסימלית ולכן α X וגם. v ( α) = t מהגדרת. α T,T כעת נראה ש α). (β T נפריד למקרים:.1 אם α X (א) אם v(β) = t,β X. מהטענה שהוכחנו v (α β) = t.(α β) X כי v(α) = v(β) = t ולכן.(α β) T (ב) אם v(β) = f,β / X. מהטענה שהוכחנו נקבל v(α β) = f,(α β) / X כי = v(α).α β T וגם כאן t, v(β) = f.2 אם.α / X לכן. α X מהטענה שהוכחנו, (α β) X ו t v (α β) = כיוון ש t. v(α) = לכן.α β T ואז W F F T כדרוש. מסקנה 4.25 מטענות 4.21 ו 4.24, כל קבוצה עקבית היא ספיקה. הוכחה: של משפט השלמות α) (Γ α Γ נניח Γ α אז { α} Γ עקבית לכן היא ספיקה. בפרט, אם { α} v Γ אז v Γ וגם v α ולכן.Γ α מסקנה X 4.26 עקבית אם ורק אם X ספיקה. הוכחה: : הראינו. : אם,v X יהי α עם. v(α) = f ממשפט השלמות נקבל כי X α ולכן X עקבית. משפט 4.27 השלמות והנאותות.X α אם ורק אם X α 20
4 הוכחה בתחשיב הפסוקים 4.7 משפט הקומפקטיות 4.7 משפט הקומפקטיות משפט 4.28 הקומפקטיות (תחשיב הפסוקים): X ספיקה אם ורק אם כל תת קבוצה סופית של X ספיקה. הוכחה: X ספיקה אם ורק אם X עקבית (הוכחנו) אם ורק אם כל תת קבוצה סופית של X עקבית (הוכחנו) אם ורק אם כל תת קבוצה סופית של X ספיקה. לכל קבוצת פסוקים X נגדיר אלו הקבוצות הסגורות שלנו. Ass (X) = {v v X} Ass(X) = ϕ X Ass(ϕ) ϕ X. יש תת קבוצה X X סופית שאינה עקבית. אם X אינה ספיקה =,Ass(X) אז = Ass(ϕ) Ass(ϕ) = ϕ X 4.7.1 שימושים הגדרה 4.29 גרף (E G =,V) הוא k צביע אם יש פונקציה {k χ : V,1},... כך שאם יש קשת בין v ל u אז.χ(v) χ(u) משפט 4.30 יהי (E G =,V) גרף אינסופי. אזי 2 צביע G 7 אם ורק אם כל תת גרף סופי שלו הוא 2 צביע. נניח G בן מניה. הוכחה: נתרגם את השאלה לשאלה בתחשיב הפסוקים. נתאים פסוק אטומי לכל קודקוד ב G. V {P 1, P 2,...} נחשוב על הצבעים כעל הערכים,t. f לכל e E נתאים: ϕ e = (P i P j ) ( P i P j ) כש (.e = (P i, P j.x = {ϕ e e E} נסמן כעת.P j ו P i היטב" את "צובעת v רק אם v ϕ e נניח שכל תת גרף סופי הוא 2 צביע ונראה שכל תת קבוצה X X סופית היא ספיקה. תהא X X סופית; ניקח V = {P i P i appears in some α X } הגרף המושרה על V 8 הוא 2 צביע. לכן לכל ϕ ששני קדקודיו ב Vמתקיים ש ϕ צבועה היטב. נהפוך את הצביעה להשמה f) t, 2 (1 ונשים לב שההשמה מספקת כל ϕ e כנ"ל ולכן את.X Syntax Semantics X consistent X satisfyable X α X α α α הערה 4.31 ראינו כי X עקבית מקסימלית מסתפקת על ידי השמה יחידה. מאידך, בהינתן השמה v נגדיר ϕ} X v = {ϕ v טענה X v 4.32 עקבית מקסימלית. הרצאה 6 7 הטענה נכונה עבור כל k 8 שימו לב לאי ההבדלה בין V ל { P}: i העתקה חח" ע ועל בין שתי הקבוצות תעביר תת קבוצה ב V לתת קבוצה מתאימה ב { P} i 19.4.15 21
4 הוכחה בתחשיב הפסוקים 4.8 גדירות 4.8 גדירות נאמר שקבוצת פסוקים X מגדירה את קבוצת ההשמות המספקות אותה Ass(X) = {v v X} נאמר שקבוצת השמות K היא גדירה אם קיימת קבוצת פסוקים X כך ש K = Ass(X) דוגמאות: הקבוצות הבאות גדירות.1 2. קבוצת כל ההשמות 3. השמות הנותנות ערך t למשתנה אחד לכל היותר K = {v}.4 הוכחה:.1 p} X = {p סתירות.2 p} X = {p טאוטולוגיות {P i P j i j},{ (P i P j ) i j}.3 {P i or P i according to v(p i ) i}.4 מה עצמת הקבוצות הגדירות? כל K גדירה היא Ass(X) X. W F F K, = אז עצמת הקבוצות הגדירות ℵ0 2. עצמת קבוצת ההשמות היא 2. ℵ0 עצמת (קבוצת החזקה) קבוצת כל תת הקבוצות של קבוצת ההשמות.2 2ℵ 0 היא סימון: = Ass קבוצת כל ההשמות; P i, v t (P i ) = t טענה 4.33 הקבוצה K fin = {v v sets t for a nite number of P i s} אינה גדירה. הוכחה: תהי X קבוצת פסוקים כך ש ( Ass(X K. fin נראה שלכל X כנ"ל v. t X תהי N},Σ = {P i i נראה כי Σ X ספיקה. לפי משפט הקומפקטיות, Σ X ספיקה אם ורק אם כל תת קבוצה סופית שלה ספיקה. תהי X Σ תת קבוצה סופית. נניח } n Σ {P 1,..., P ונגדיר את vבאופן n הבא: { t 1 i n v n (P i ) = f n < i נראה כי Σ v n X נראה אפילו כי Σ.v n X אכן, ;v n K fin מהגדרת,X מתקיים ש ( Ass(X K fin ובפרט.v n X מהגדרת v n ברור גם Σ v n ולכן Σ.v n X הראנו שכל תת קבוצה של Σ X ספיקה, ולכן היא בעצמה ספיקה. ההשמה היחידה המספקת את Σ היא v t ולכן v t X ובפרט K fin Ass(X) לכן K fin אינה גדירה. 22
4 הוכחה בתחשיב הפסוקים 4.8 גדירות הגדרה 4.34 קבוצת השמות K גדירה באופן סופי אם יש X סופית כך ש ( Ass(X K = משפט 4.35 התנאים הבאים שקולים:.1 K גדירה וגם K c גדירה 2. K גדירה באופן סופי 3. K גדירה על ידי פסוק יחיד הוכחה: 1 :2 תהיינה X, Y כך ש K = Ass(X) K c = Ass(Y ) ותהא Σ = X Y (v / Ass(X) vאז K c וכנ"ל v / Ass(Y ) אז v K אינה ספיקה (כי אם Σ נראה כי Ass(X ) = K וגם Σ סופית, שאינה ספיקה. Y = X לפי משפט הקומפקטיות קיימת.Ass(Y ) = K c ברור כי ) Ass(X.K נראה כי אין v K c כך ש X.v כיוון ש.v Y,v K c אם גם X v אזי v X Y = Σ בסתירה. לכן Ass(X ) K ובפרט Ass(X ) = K לכן K גדירה באופן סופי. הוכחה: 2 :3 תהי Ass(X) K = כך ש { Xויהי = {ϕ 1,.., ϕ n ϕ = ϕ 1 ϕ 2... ϕ n Ass ({ϕ}) = Ass(X) = K קל לראות ש הוכחה: 3 :1 ({ϕ}) K = Ass אזי ({ ϕ}).k c = Ass תחשיב הפסוקים פסוקים אטומים יכולים לקבל t או f בנינו נוסחאות מורכבות בעזרת קשרים והפסוקים האטומיים (סינטקס, W) F F הגדרנו סמנטיקה (השמות לפסוקים אטומים והרחבה לערך אמת לכל ϕ) W F F מושג ההוכחה: מערכת הוכחה (C (HP לתחשיב הפסוקים תכונות של מערכת ההוכחה :HP C נאותות, דדוקציה, דיכוטומיה, שלמות אנלוגיה בין סינטקטי לסמנטי X α X α קופמקטיות גדירות אבל עדיין תחשיב הפסוקים מאוד מוגבל. מה אי אפשר לעשות בתחשיב הפסוקים? 23
4 הוכחה בתחשיב הפסוקים 4.8 גדירות דוגמה: סוקרטס בן אדם תכונה שסוקרטס מקיים אותה כל בן אדם הוא בן תמותה כל מי שמקיים את התכונה מקיים תכונה אחרת לכן סוקרטס בן תמותה דוגמה: כל מספר טבעי גדול מ 0 הוא עוקב של מספר טבעי אחר נרצה לתאר יחסים כאלה, ואנחנו לא יכולים לעשות זאת בתחשיב הפסוקים הרגיל. 24
חלק II תחשיב היחסים / לוגיקה מסדר ראשון באנגלית Predicate Calculus / First Order Logic 1 הגדרות ומשפטים בסיסיים אלפבית: סימנים לוגיים המשותפים לכל השפות.1 משתנים N} {x i i 2. סימני עזר: סוגריים ),(.3 קשרים בוליאניים,,,,.4 כמתים, מילון: (סיגנטורה (Signature המילון מכיל פרמטרים המיוחדים לשפה; תת קבוצה של:.1 סימני קבוע N} {c i i.2 סימני יחס N},{R n,i n, i כש R n,i הוא סימן יחס n מקומי.3 סימני פונקציה N} {f n,i i, n ו f n,i מסמן פונקציה n מקומית נאמר כי מילון הוא סופי, אם יש בו מספר סופי של סימונים. נאמר שמילון הוא יחסי אם אם אינו מכיל סימני פונקציה. האלפבית של השפה איתה עובדים מורכב מהסימונים הלוגיים המשותפים לכל השפות ומהסימנים במילון. בד"כ נסמן מילון באותיות,τ σ וכו'. הגדרה 1.1 שם עצם (term) מעל מילון σ. ההגדרה ברקורסיה: בסיס: כל x i הוא שם עצם. כל c σ גם שם עצם. פעולות: לכל f σ אם f פונקציה n מקומית ו t 1,.., t n שמות עצם גם ) n f(t 1,..., t שם עצם. משפט 1.2 הקריאה היחידה לשמות עצם: אם t הוא שם עצם מעל מילון σ אז מתקיים בדיוק אחד מהבאים: x i לאיזשהו משתנה t = x i.1 c σ לאיזשהו t = c.2 3. קיימת פונקציה יחידה f σ וקיימים t 1,,.. t k שמות עצם יחידים כך ש f על k משתנים ו t = f(t 1,..., t k ) 1.1 נוסחאות מעל מילון σ הגדרה 1.3 נוסחאות אטומיות: לכל R σ סימן יחס n מקומי ולכל t 1,..., t n שמות עצם ) n R(t 1,..., t הוא נוסחה אטומי. הגדרה 1.4 פעולות: 1. הפעלת קשרים של תחשיב הפסוקים: אם,α β נוסחאות אז גם ( α) (α β),(α β) (α β),(α β) 25
1 הגדרות ומשפטים בסיסיים 1.2 משתנים חופשיים וקשורים 2. כמתים: אם α נוסחה ו x משתנה, אז (α x ) ו ( α x ) נוסחאות. הסגור של הנוסחאות האטומיות תחת הפעולות האלה הוא הנוסחאות מעל σ. משפט 1.5 משפט הקריאה היחידה לנוסחאות מעל σ: אם α נוסחה אז מתקיים בדיוק אחד מהבאים: αנוסחה אטומית: קיים R σ יחיד וכו' ( β) β α = יחיד γ) a = (β op כש {,, {,,op β, γ יחידים ו op יחיד. (( y R 1 (f(y))) ( x R 2 (f(x), c))) β a = x כש β x, יחידים β α = x כש β x, יחידים דוגמאות )} (, 2 x, y,σ = {c, f(), R 1 (), R משתנים. c f(c), f(x), x, שמות עצם (f(x)) :R 1 נוסחה אטומית f(c)) :R 2 (x, נוסחה אטומית נוסחה: מאידך: f(c)) (R 1 (f(x)) לא נוסחה f(c)) אינו נוסחה אטומי) (f(c))) c ) R 1 לא נוסחה כי c אינו משתנה (מכמתים רק משתנים) (x) x R 1 חסרים סוגריים הערה 1.6 לשם הנוחות נשמיט סוגריים. סדר קדימויות: 1. כמתים 2. קשרים לפי סדר קדימויות בתחשיב הפסוקים 1.2 משתנים חופשיים וקשורים נגדיר את המושגים משתנה חופשי (free) ומשתנה קשור.(bound) הגדרה 1.7 עבור שם עצם F V (t) t, מוגדר באופן הבא: אם t = c אז = (t) F V אם x) t = x משתנה) אז {x} F V (t) = אם ) n t = f(t 1,..., t אז ) n F V (t) = F V (t 1 ) F V (t 2 )... F V (t הגדרה 1.8 עבור נוסחה F V (ϕ) ϕ, מוגדר באופן הבא: אם ) n ϕ = R(t 1,..., t אז ) n F V (ϕ) = F V (t 1 )... F V (t אם ( α) ϕ = אז (α) F V (ϕ) = F V אם β) ϕ = (α op אז (β) F V (ϕ) = F V (α) F V אם ϕ = Qx α כש { {,,Q F V (ϕ) = F V (α)\ {x} 26
1 הגדרות ומשפטים בסיסיים 1.3 מבנה דוגמה: F V (( x R(x)) R 2 (x)) = F V ( x R(x)) F V (R 2 (x)) = {x} = {x} כי F V ( x R(x)) = F V (R(x)) \ {x} = F V (x) \ {x} = }{{} {x} F V (R 2 (x)) = F V (x) = x (( x ϕ(x)) α(x)) (( y ϕ(y)) α(x)) הערה 1.9 כיוון שביטויים מהצורה "מבלבלים", נראה שלנוסחה יש אותה משמעות סמנטית. אז נוכל לשנות שם למשתנים קשורים כדי שיהיו שונים משמות המשתנים החופשיים. הגדרה x 1.10 חופשי ב ϕ אם (ϕ) x F V הגדרה 1.11 נוסחה ϕ תיקרא סגורה אם = (ϕ) F V הגדרה 1.12 שם עצם t יקרא סגור אם = (t) F V 1.3 מבנה הגדרה 1.13 מבנה עבור מילון σ: מבנה M מורכב מהאובייקטים הבאים: 1. תחום D M קבוצה לא ריקה. 2. פירוש של סימנים מ σ : (א) לכל סימן קבוע c σ מתאים איבר c M D M (ב) לכל סימן יחס n מקומי R σ מתאים יחס n מקומי מעל D M R M D M... D M }{{} n times f M (ג) לכל סימן פונקציה n מקומי f σ מתאימים פונקציה : ( D M ) n D M ומסמנים )..., m M = ( D M, C0 M,..., f0 M,..., R כדי להגדיר ערכי אמת צריך לדעת את ערכי המשתנים החופשיים הגדרה 1.14 השמה: v : {x i } D M 7 הרצאה 26.4.15 כדי להגדיר ערכי אמת צריכים: מבנה M, השמה v. v ( d /x i) (x j ) = { v(x j ) d j i j = i לכל d D M נסמן 27
1.4 הגדרת ערך האמת בלוגיקה מסדר ראשון 1 הגדרות ומשפטים בסיסיים 1.3.1 ערך של שם עצם תחת השמה v במבנה M אם c i σ v(s) = c M i אז s = c i v(s) = v(x i ) אז s = x i אם ) n s = f (s 1,.., s כש σ,f אז )) n v(s) = f M ( v(s 1 ),..., v(s דוגמה שנעבוד איתה: )} R(, M = (N, 0, 1, +,, ),σ = {c 0, c 1, f 1 (, ), f 2 (, ), אז נסמן ) 2 v(x 1 ) = 5, v(x 2 ) = 7,s = f 1 (f 2 (f 1 (c 1, c 1 ), x 1 ) x v (f 1 (c 1, c 1 )) = f M 1 (c M 1, c M 1 ) = 1 + 1 = 2 v (f 2 (f 1 (c 1, c 1 ), x 1 )) = f M 2 (f 1 (c 1, c 1 ), v(x 1 )) = 2 5 = 10 v(s) = 10 + 7 = 17 1.4 הגדרת ערך האמת בלוגיקה מסדר ראשון יהיו M מבנה, v השמה..1 נוסחאות אטומיות: ) n ϕ = R (s 1,..., s כש σ ;R אז v(ϕ) = t אם ורק אם ( v(s 1 ),..., v(s n )) R M נחזור לדוגמה: ) 2 ϕ = R (f 1 (c 1, c 1 ), x במבנה שהגדרנו קודם. אם = 6 ) 2 v(x אז v(ϕ) = t אם = 1 ) 2 v(x או = 0 ) 2 v(x אז v(ϕ) = f.2 קשרים לוגיים: אם β) ϕ = (α op כש {,, {, op או ( α) ϕ = אז ערך האמת של ϕ יקבע לפי טבלת האמת של הקשר הרלוונטי: v (ϕ) = T T op ( v(α), v(β)).3 כמתים: ϕ = x i α או ϕ = x i α.ū(α) = t מתקיים u = v ( d /x i) כך שעבור d D M אם ורק אם יש v( x i α) = t ū(α) = t מתקיים u = v ( d /x i) עבור d D M אם ורק אם לכל v ( x i α) = t משפט 1.15 אם u, v השמות כך שלכל (ϕ) v(x) = u(x),x F V אז ū(ϕ) v(ϕ) = הגדרה 1.16 פסוק: נוסחה ללא משתנים חופשיים מסקנה 1.17 יהי ϕ פסוק. אם קיימת השמה v כך ש v(ϕ) = t אזי לכל השמה ū(ϕ) = t u, מסקנה 1.18 ערך האמת של פסוק תלוי רק במבנה דוגמה ϕ = x y R (f 2 (c, y), x) יהי d N כלשהו. צ"ל: אם,v(x) = d אז v ( y R (f 2 (c 1, y), x)) = t נביט בהשמה המקיימת: d v(x) = (קבוע כבר) 28
2 מושגי יסוד סמנטיים ערך ל y ) (נבחר v(y) = d v R f 2 (c 1, y), x = v (R(d, d)) = t }{{} d דוגמה α = ( x R(x, x)) R (f 1 (x, c 1 ), x) F V (α) = {x} נשים לב ש x מימין ל אינו מכומת. תהא v השמה ונניח ש 7 =.v(x) v(α) = f הערה 1.19 באותו מילון עם המבנה <), +, 1,,(N, 0,. v(α) = t למה זה נכון? מהו x)) v ( x R(x, (אצלנו < = (R צריך להביט לכל d N על ערך האמת של x) R(x, תחת ההשמה v ( d /x) R M (d, d) = f לכן v (R(x, x)) = f לפי T T ואז. v ( x R(x, x)...) = t 2 מושגי יסוד סמנטיים נדבר על שני מונחים שונים בהקשר של נביעה: (truth) t נביעה (valid) v נביעה הגדרה t נביעה: 2.1 מבנה M והשמה v מספקים את ϕ אם. v(ϕ) = t נסמן.M, v ϕ ϕ. של הוא t מודל,M) (v במקרה זה נאמר כי,M. v כך ש ϕ v אם יש השמה M ספיקה במבנה ϕ תהי Γ קבוצת נוסחאות. אז.M, v Γ ונסמן M, v ϕ מתקיים ϕ Γ אם לכל v תחת השמה M מסתפקת במבנה Γ Γ. של הוא t מודל,M) ואומרים ש ( v,m, v כך ש Γ v אם יש M ספיקה במבנה Γ ϕ (Γ) ספיקה אם יש מבנה M בו ϕ ספיקה. נסמן Γ t ϕ אם כל t מודל של Γ הוא גם t מודל של ϕ. במילים אחרות, Γ t ϕ אם לכל,M v כך ש t, v(α) = לכל,α Γ מתקיים גם v(ϕ) = t M, v Γ M, v ϕ {ψ} t ϕ וגם {ϕ} t ψ אם ל ψ היא t שקולה ϕ נאמר כי ϕ היא t תקפה אם t ϕ הגדרה v נביעה: 2.2.ϕ של יקרא v מודל M. M ϕ ומסמנים,M, v ϕ,v אם לכל השמה M נכונה במבנה (Γ) ϕ 29
2 מושגי יסוד סמנטיים ϕ (Γ) היא v ספיקה אם יש לה v מודל. v ϕ בכל מבנה. נסמן אם ϕנכונה נקראת v תקפה ϕ ϕ. של הוא גם v מודל Γ של אם כל v מודל Γ v ϕ {ψ} v ϕ וגם {ϕ} v ψ אם ל ψ הוא v שקול ϕ דוגמאות: v(x) = 0,R M = {(0, 0), (0, 1)},D M = {0, 1} t מודל: יש ברור כי ל ϕ.ϕ = R(x, x) ל ϕ יש גם v מודל: כל מבנה בו R יחס רפלקסיבי. (אמ"מ).M, v כך ש ϕ v יש M בכל מבנה.ϕ = ( x 3 x 4 R(x 3, x 4 )) R(x 1, x 2 ) אם = M R (או (R M = D M D M אז M הוא v מודל של.ϕ α = x, y, z ((R(x, y) R(y, z)) R(x, z)) β = x, y, z, w ((R(x, y) R(y, z) R(z, w)) R(x, w)) מתקיים {α} v β טענה 2.3.1 אם v תקפה ϕ אז כך גם x ϕ, x ϕ 2. אם v תקפה x ϕ אז v תקפה ϕ v(ϕ) = v(ψ) מתקיים,M v אם ורק אם לכל t שקולות הן ו ψ ϕ 3. הוכחה: תרגיל ("ההוכחה טריוויאלית") הערה 2.4 אם M, v ϕ אז בוודאי ;M, v ϕ מאידך ϕ וגם ϕ יכולות להיות ספיקות ב M. אם M ϕ אז בוודאי M ϕ אבל אם M ϕ לא בהכרח. M ϕ טענה 2.5.1 אם Γ t ϕ אז Γ v ϕ (הכיוון השני לאו דווקא נכון).2 אם Γ מכילה רק פסוקים אז אם Γ v ϕ אז Γ t ϕ 3. ϕ v אם ורק אם t ϕ ולכן נדבר רק על תקפות באופן כללי 4. אם ב Γ יש רק פסוקים אז Γ t ϕ אם ורק אם Γ v ϕ Γ t ϕ אם ורק אם t ספיקה Γ {ϕ}.5.1 נניח כי,M Γ תהי v השמה כלשהי. M, v Γ כי M Γ ומהנתון (משתמשים ב ϕ (Γ t מתקיים.M ϕ ולכן מסתפקת תחת כל השמה ב M ϕ לכן.M, v ϕ 2. נניח,M. v Γ צ"ל:,M. v ϕ כיוון שב Γ יש רק פסוקים, מתקיים שערך האמת לא תלוי בהשמה ולכן לכל השמה u מתקיים.M, u Γ דהיינו,. M Γ מהנתון M ϕ ובפרט M, v ϕ הוכחה: 3. נובע מ א,ב (בקבוצה הריקה אין נוסחאות) 4. נובע מ א,ב 30
2.1 הצבה של שם עצם למשתנה 2 מושגי יסוד סמנטיים Γ t ϕ ולכן M, v Γ וגם M, v ϕ בפרט M, v Γ כך ש { ϕ } M, v אז יש t ספיקה, Γ {ϕ}.5 תכנית השיעור: 1. נדבר בקצרה על מושגים סמנטיים 2. הצבה של שמות עצם במשתנים.3 צורות נורמליות: Prenax Normal Form 4. גדירות יחסים במבנה הרצאה 8 3.5.15 טענה t שקולה ϕ 2.6 ל ψ אם ורק אם (ψ ϕ) תקפה. הוכחה: מיידית מ t שקילות וטבלת האמת של. מה לגבי v שקילות? נניח ϕ ו ψ v שקילות האם ϕ ψ תקפה? דוגמה: R(x) ;ψ = x R(x),ϕ = נשים לב ש ϕ ו ψ v שקולות. מאידך, R(x) R(x) x אינה תקפה. טענה R(x) 2.7 R(x) v x v ( x R(x)), v (R(x)) = t אם ורק אם לכל d תהא v השמה. הוכחה: יהי M מבנה כך ש ( R(x.M v ( d /x) (R(x)) = t וכו'. ϕ הוא הפסוק x, 1,,... x n הסגור האוניברסלי של ϕ מסומן הגדרה 2.8 עבור נוסחה ϕ עם משתנים חופשיים x 1 x 2... x n ϕ ϕ של v מודל M ורק אם אם מסתפק ב M ϕ טענה 2.9 הוכחה: מיידי. טענה Γ v ϕ 2.10 אם ורק אם ϕ Γ v אם ורק אם ϕ,γ t כש } Γ Γ = { α α 2.1 הצבה של שם עצם למשתנה יהי x משתנה ו r שם עצם. אינטואיציה: רוצים להחליף "כל" מופע של x ב r. צריך להגדיר בזהירות בגלל האפשרות ש x קשור. הגדרה 2.11 החלפת משתנה בשם עצם, עבור שמות עצם יהיו,r s שמות עצם. שם העצם [x/ s [ r מוגדר באופן הבא: (א) אם s = c אז s [ r /x] = s (ב) אם s = y אז אם s [ r /x] = s y x ואם y = x אז s [ r /x] = r.2 אם ) n s = f (s 1,..., s אז /x]) s [ r /x] = f (s 1 [ r /x],..., s n [ r לפי משפט הקריאה היחידה אפשר לראות ש [ x / s [ r מוגדר היטב. הגדרה 2.12 הצבת שם עצם למשתנה עבור נוסחאות יהי r שם עצם, ϕ נוסחה. אז [x/ ϕ [ r מוגדרת באופן הבא:.1 אם ) n ϕ = R (s 1,..., s אז /x]) ϕ [ r /x] = R(s 1 [ r /x],..., s n [ r.2 אם ϕ = ϕ 1 op ϕ 2 (או (ϕ = ϕ 1 אז /x] ϕ [ r /x] = ϕ 1 [ r /x] op ϕ 2 [ r (או /x] ( ϕ 1 [ r.1 (Q {, (כש { ϕ = Qy ψ.3 (א) אם y = x אז ϕ [ r /x] = ϕ (ב) אם y x אז /x] ϕ [ r /x] = Qy ψ [ r הערה 2.13 בעצם [x/ ϕ [ r מתקבלת מ ϕ ע"י החלפת כל המופעים החופשיים של x ב r. 31
2.1 הצבה של שם עצם למשתנה 2 מושגי יסוד סמנטיים דוגמה: ) 2 ψ = x 3 ϕ,ϕ = R(x 3 ),r 2 = x 3,r 1 = f(x 1, x ו ϕ α = x 1 אז: r 1 [ r2 /x 3] = f(x 1, x 2 ) ϕ [ r1 /x 3] = R (f(x 1, x 2 )) α [ r1 /x 3] = x 1 R (f(x 1, x 2 )) ψ [ x1 /x 3] = ψ הערה 2.14 בדוגמה שראינו [3 α [ r1 x/ נוצר מופע קשור חדש של x. 1 יש הרבה מקרים בהם היינו רוצים להימנע מכך. הגדרה r 2.15 חופשי להצבה ב x בנוסחה ϕ אם: ϕ עבור חופשי להצבה ב x r אזי ϕ = R (s 1,.., s n ).1.2 אם ϕ = ϕ 1 op ϕ 2 (או (ϕ = ϕ 1 אז r חופשי להצבה ב x עבור ϕ רק אם r חופשי להצבה ב x עבור ϕ 1 וגם עבור ϕ 2 (או עבור ϕ 1 בלבד במקרה של (ϕ = ϕ 1 ϕ = Qy ψ.3 (א) אם x אינו מופע ב ϕ אז r חופשי להצבה ב x בנוסחה (לא מתבצעות הצבות) (ב) אם x אינו חופשי ב ϕ אז r חופשי להצבה (לא מתבצעות הצבות) (ג) (ϕ) x F V אז r חופשי להצבה אם: y / F V (r).i ψ עבור חופשי להצבה ב x r.ii אז טענה r 2.16 חופשי להצבה ב x עבור נוסחה ϕ אם ורק אם לאף משתנה (r) y F V לא נוצר מופע קשור חדש. הערה: צריך להגדיר מהם מופע קשור ומופע חופשי (יותר עדין ממשתנה קשור / חופשי) טענה 2.17 יהיו,r s שמות עצם ו v השמה. נגדיר השמה חדשה: [x/. u = v [ v(r) כלומר: { v(y) y x u(y) = v(r) y = x ū(s) = v (s [ r /x]) טענה r 2.18 שם עצם, v השמה ו ( r ) y) y / F V לא מופיע ב r ) אזי /x]) v(r) = ū (r [ y כאשר /y].u = v [ v(x) טענה 2.19 שינוי שם משתנה קשור תהי ϕ נוסחה כך ש y לא מופיע ב ϕ אז x ϕ (באותו אופן t שקולה x ) ϕ לנוסחה (x/ y ϕ ( y (ובאותו אופן ( y ϕ ( y /x) הוכחה: ההוכחה מיידית מטענה 2.18 הטענה מאפשרת להחליף שם למשתנים קשורים ולקבל נוסחאות שקולות. בפרט, בהינתן נוסחה ϕ ניתן לקבל (ע"י אלגוריתם יעיל) נוסחה ψ השקולה ל ϕ בה לאף משתנה חופשי אין מופע קשור. 32
2.2 צורות קנוניות 2 מושגי יסוד סמנטיים 2.2 צורות קנוניות הגדרה P NF 2.20 Prenax Normal Form נוסחאות ב P NF הן מהצורה Q 1 x 1...Q n x n ϕ (כש ϕ חסרת כמתים) הגדרה אינדוקטיבית: נוסחה חסרת כמתים: בסיס: נוסחאות אטומיות; פעולות: קשרים; סגור: נוסחאות חסרות כמתים. :P NF בסיס: נוסחאות חסרות כמתים; פעולות: כמתים; סגור: P. N F משפט 2.21 משפט ה P NF לכל נוסחה מעל מילון σ קיימת נוסחת P NF מעל t שקולה σ לה. הוכחת המשפט בהמשך. הפעלה של העברת נוסחה לנוסחת P NF נקראת חילוץ כמתים. טענה 2.22 x ϕ x ל ψ t שקולה x (ϕ ψ).1 x ϕ x ל ψ t שקולה x (ϕ ψ).2.3 אם (ψ) x / F V אזי t שקולה ( x ϕ) ψ ל ( ψ x (ϕ.4 אם (ψ) x / F V אזי ψ) t שקולה x (ϕ ל ψ ( x ϕ).5 ϕ x ϕ x ϕ, x ϕ x ) זה t שקילות) הערה ψ) 2.23 x (ϕ לאו דווקא שקולה ל ψ x ϕ x דוגמה: x :ϕ זוגי, x ψ אי זוגי. x ϕ x ψ נכון אבל ψ) x (ϕ לא נכון הוכחה: הוכחת משפט ה P: NF בתור התחלה נתרגם כל נוסחה לנוסחה מעל הקשרים,, והכמתים,. אם ϕ נוסחה אטומית, אז היא כבר ב P. NF המקרה המעניין: ϕ 1, ϕ 2 נוסחאות, ψ 1, ψ 2 ב P NF ו.ϕ 2 ψ 2, ϕ 1 ψ 1 אז α 1 ϕ = ϕ 1 op ϕ 2 α 2 ϕ α טענה: ϕ ψ 1 op ψ 2 נשנה את שמות המשתנים הקשורים ב ψ 1 למשתנים שלא מופיעים ב ψ 2 ואחר כך נעשה אותו הדבר ל ψ. 2 כעת לפי הטענה הקודמת על שקילויות ניתן להוציא את כל הכמתים החוצה. 2.3 גדירות יחסים במבנה σ arith = c 0, c 1, +,, <, = מבנה: הטבעיים. x) ϕ odd (x) = ϕ even (x),ϕ even (x) = y (y (c 1 + c 1 ) = divide(y, x) = z (y z = x),ϕ prime (x) = x (divide(y, x) ((y = x) (y = c 1 ))) הגדרה 2.24 יהיה σ מילון, M מבנה עבורו. תהי ) n ϕ (x 1,.., x נוסחה מעל σ עם } n F V (ϕ) = {x 1,..., x (אולי ב ϕ יש משתנים קשורים נוספים) אזי ϕ מגדירה ב M את היחס הבא: R ϕ D M... D M }{{} n times כך ש (d 1,..., d n ) R ϕ אם ורק אם ההשמה v המקיימת.v(x 1 ) = d 1,..., v(x n ) = d n מקיימת. v(ϕ) = t יחס R יקרא גדיר ב M אם קיימת נוסחה ϕ כך ש R. = R ϕ 33
2.3 גדירות יחסים במבנה 2 מושגי יסוד סמנטיים הרצאה 9 שאלה ממבחן סמסטר א': נתון המילון: =}, {+, = Σ 9 עם מבנה,R + חיבור ו כפל. 10.5.15 הוכיחו: 1. המספר 0 גדיר (יש נוסחה ϕ שהאיבר היחיד המספק אותה הוא 0; או היחס החד מקומי {0} גדיר). 2. המספר a גדיר אם ורק אם היחס x < a גדיר 3. המספר 2 גדיר (ב R ) פתרון 4. אם יחס חד מקומי סופי P גדיר ב R אז המספר המקסימלי שמקיים את P, גדיר. 5. אם יחס חד מקומי סופי P גדיר ב R אזי כל מספר שמקיים את P גדיר. ϕ 0 (x) : y (x + y = y) ϕ (x, y) : z (x + z z = y) 0 נייטרלי לחיבור לפני פתרון ב', נגדיר את היחס x: y ϕ (x, y) אם ורק אם x y כי הנוסחה אומרת שיש מספר אי שלילי ) 2 (z כך ש y. x + z 2 = אז נגדיר: ϕ < (x, y) : z ( ϕ 0 (z) ( x + z 2 = y )) ϕ < (x, y) : ϕ (x, y) (x = y) או.1 2. נניח a גדיר. נניח ϕ a נוסחה המגדירה את a. נציג נוסחה המגדירה את >: a ϕ <a (x) : y (ϕ < (x, y) ϕ a (y)) נניח (x) ϕ <a גדיר. ϕ a (x) = ( ϕ <a (x)) ( z ( ϕ 0 (z) y (y + z z = x ϕ <a (y)))) הסבר: a הוא המספר היחיד המקיים a לא קטן מ a וגם לכל מספר חיובי ממש ) 2 a z 2 z), קטן מ a. 3. נגדיר את 1. ϕ 1 : y (x y = y) ϕ 2 (y) : z (ϕ 1 (z) (z + z = y)) ואז ϕ 2 (x) : y (ϕ 2(y) (x x = y) z (x = z z)).4 ϕ maxp (x) : ϕ P (x) ( y (ϕ P (y) ϕ (y, x))) כאשר ϕ P הנוסחה המגדירה את x P. מקיים את P וכל מספר אחר המקיים את P קטן או שווה לו. מהסופיות נקבל שאכן קיים מקסימום. 9 כשכותבים = מתכוונים ליחס השוויון ואין צורך לפרש אותו 34
3 בדיקת ספיקות 5. נוכיח באינדוקציה על מספר המספרים הממשיים המקיימים את P. בסיס: = 1 P (נסמן ב P את מספר הממשיים המקיימים את P). תהא ϕ P הנוסחה המגדירה את P. בגלל שיש רק מספר אחד שמקיים אותה נקבל ש ϕ P מגדירה אותו. נניח שהוכחנו את הטענה לכל יחס P המקיים. P n נוכיח את הטענה ליחס המקיים + 1 n. P = יהי a איבר כלשהו P a. אם maxp, 10 a = אז ראינו כי a גדיר. אם a אינו המקסימלי, אז נגדיר יחס חדש (x)).r(x) = ϕ P (x) ( ϕ maxp נשים לב שביחס R יש בדיוק n איברים, כי פרט ל maxp כל איברי P ביחס ואין אחרים. נשים לב כי a R (כי הוא לא היה המקסימלי). כיוון ש R גדיר ו n R, = ניתן להגדיר את איבריו לפי הנחת האינדוקציה, ולכן a גדיר. 3 בדיקת ספיקות בשיעור הזה ננסה להבין איך בודקים האם קבוצת נוסחאות ספיקה. פסוק: נוסחה ללא משתנים חופשיים. פסוק/נוסחה אווניברסלי: x 1... x n ϕ כש ϕ חסרת כמתים. פסוק/נוסחה יישי: x 1... x n ϕ 11 כש ϕ חסרת כמתים. הצעד הראשון בבדיקה האם נוסחה ϕ ספיקה היא תרגום ϕ לנוסחה אוניברסלית באופן המשמר ספיקות. טענה 3.1 יהי σ מילון, אזי ϕ(x) x ספיקה מעל σ אם ורק אם /x] ϕ [ c ספיקה מעל המילון {c},σ = σ כאשר c סימן קבוע חדש. הוכחה: : נניח ϕ(x) x ספיקה. כלומר, יש ϕ(x),m. v x לפי הגדרת ערך אמת מתקיים שיש d D M כך ש ( ϕ(x M, v [ d /x] ונראה כעת כי /x] ϕ [ c ספיקה. M c).c לא מפורש ב M כי (c / σ וניקח /x] v = v [ d (אפשר יהי M המבנה הזהה ל M פרט לכך ש d = גם v = v כי x לא מופיע ב [ x / (ϕ [ c לפי הגדרת הסמנטיקה בגלל ש d v (c) = ולפי טענה שהוכחנו, /x], v (ϕ [ c /x]) = v [ d במבנה.M ולכן.M, v ϕ [ c /x] : נניח M מבנה עבור σ ו v השמה כך ש [ x /.M, v ϕ [ c יהי M הצמצום של M ל σ. אזי ϕ(x) M, v x כי יהי M. D M = D M d = c לפי הגדרת ערך אמת M, v [ d /x] ϕ(x) טענה 3.2 פסוק ספיק אם ורק אם הפסוק y 1... y n x ϕ(x, y 1,..., y n ) y 1... y n ϕ(f(y 1,..., y n ), y 1,..., y n ) ספיק מעל מילון {f} σ = σ כאשר f סימון פונקציה n מקומית חדש. הוכחה: בדומה למה שעשינו קודם. משפט 3.3 סקולם (Skolem) קיים אלגוריתם שלכל פסוק ϕ בונה פסוק אוניברסלי ψ כך ש ϕ ספיק אם ורק אם ψ ספיק. ψ עשוי להיות מעל מילון שונה. הוכחה: מוצאים ϕ שקולה ל ϕ בצורת.P NF מסלקים כמתים יישיים ( ) אחד אחרי השני, משמאל לימין ע"י הוספת סימני פונקציות חדשים או קבועים למילון. 10 כתיב מקוצר, ראינו כבר איך להגדיר 11 מלשון יש 35
3 בדיקת ספיקות דוגמאות.1 ϕ(c) x ϕ(x) כש c סימן קבוע חדש x y ϕ(x, y) x ϕ(x, f(x)).2.3 x 1 y 1 x 2 y 2 ϕ(x 1, x 2, y 1, y 2 ) x 1 x 2 y 2 ϕ(x 1, x 2, f 1 (x 1 ), y 2 ) x 1 x 2 ϕ(x 1, x 2, f 1 (x 1 ), f 2 (x 1, x 2 )) הערה 3.4 האם ϕ שקולה ל ψ? לאו דווקא, בהרבה מקרים הן אפילו לא מוגדרות מעל אותו מילון! הערה 3.5 האם הטרנספורמציה שומרת על תקפות? לאו דווקא. ניקח ϕ = x y (R(x) R(y)) x R(x) y R(y) x R(x) y R(y) ו ψ = x (R(x) R(f(x))) הערה 3.6 המילה המעניינת והחשובה במשפט היא אלגוריתם. בלעדיה הטענה טריוויאלית. חזרה לשאלת הספיקות. דבר על פסוקים ללא משתנים וללא כמתים. R(a, f(a)) R(b, c).1 (R = ספיק (למשל R(a, f(a)) R(f(b), c).2 3. א ב דוגמה: נראה כעת תרגום של נוסחה חסרת משתנים (וכמתים) לתחשיב הפסוקים באופן ששומר ספיקות / תקפות. כיוון שעצמת קבוצת הנוסחאות האטומיות בת מניה, ניתן להתאים לכל נוסחה אטומית מעל σ פסוק אטומי P i בתחשיב הפסוקים. למשל R σ = a, b, c, f, R(a, a), R(a, b),... }{{}}{{} P 1 P 2 (מגדירים R(a, f(a)), R(b, f(a)),... }{{}}{{} P 3 P 4 למשל אם R(a, f(a)) P 1 ו R(b, c) P 2 אזי R(a, f(a)) R(b, c) P 1 P 2 אם ϕ נוסחה חסרת משתנים וכמתים, נסמן ב ϕ ˆ את הנוסחה שהתאמנו לה בתחשיב הפסוקים. באינדוקציה כמו שצריך). טענה 3.7 1. ϕ ספיקה אם ורק אם ϕˆ ספיקה. 2. ϕ תקפה אם ורק אם ϕˆ תקפה. 36